home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.cs.arizona.edu
/
ftp.cs.arizona.edu.tar
/
ftp.cs.arizona.edu
/
icon
/
newsgrp
/
group02b.txt
/
000157_icon-group-sender_Mon Dec 9 12:46:02 2002.msg
< prev
next >
Wrap
Internet Message Format
|
2003-01-02
|
3KB
Return-Path: <icon-group-sender>
Received: (from root@localhost)
by baskerville.CS.Arizona.EDU (8.11.1/8.11.1) id gB9Jk0M22361
for icon-group-addresses; Mon, 9 Dec 2002 12:46:00 -0700 (MST)
Message-Id: <200212091946.gB9Jk0M22361@baskerville.CS.Arizona.EDU>
Date: Mon, 9 Dec 2002 12:28:21 -0700
From: Clint Jeffery <jeffery@cs.nmsu.edu>
To: icon-group@cs.arizona.edu
Subject: Re: Icon compiler
Errors-To: icon-group-errors@cs.arizona.edu
Status: RO
[Ladvansky Karoly asserts:]
I have this Fibonacci test for benchmarks. With MS C ++ it takes 8 secs to
calculate the result for 40 as input and for Icon it takes about 600 secs...
even 3 times speed improvement, it'd still be 200 secs for
Icon... I think it's very exaggerated to say Icon programs can be
faster than C.
I think Ladvansky is doing fine to speak blunt truth, of course Icon is
wayyy slower than C *on average*. The original poster wasn't talking about
an average case, he was talking about one particular real application where
Icon beats C, and I have heard of many others. So Ladvansky, I think you
are overgeneralizing the other poster's report, just as you overgeneralize
your own test result, and come to a slightly-incorrect conclusion, from
which you basically called someone else a liar who was simply reporting a fact.
When does Icon beat C, if ever? (1) When there are potentially complex
algorithms and data structures needed, but the C code is suboptimal due to
limited time (if programmer time is infinite, this goes away). Given the
same amount of time to write C or Icon, you may be able to implement a faster
algorithm for the Icon version than for C. Do you have the time & technical
knowhow to implement hash tables that dynamically resize when you need them?
Icon gives you them for free. (2) When the application execution time
depends mainly on the things Icon is best at. Then the Icon time is mainly
spent in the runtime system, which is quite optimized C code.
I think Ladvansky would find, if he did any real testing, that the
difference between Icon and C varies radically depending on application.
Fibonacci is a highly artificial test of one tiny aspect of performance.
But still, C is wayyy faster than Icon on average, even if results vary.
Lastly, I would like to say that the quest for optimal performance for
the Icon implementation is far from over, and there is a lot of room for
the right researchers (maybe, graduate student researchers?) to contribute
materially to performance in ways that will benefit this entire community.
Maybe some of you-all should consider going back to school to help out. :-)
[Ladvansky politely observes]
> However slow compared to C, I do recognise Icon's power and
> I'm considering adding it to my software toolchest.
Thanks for this kind observation. :-)
Clint jeffery@cs.nmsu.edu